[INFO] cloning repository https://github.com/xicalango/rsed
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/xicalango/rsed" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fxicalango%2Frsed", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fxicalango%2Frsed'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 3cf4128448b7776a91835ac20b913a115040ce98
[INFO] checking xicalango/rsed against master#158f00a1c5175648af6f6099b075f78d1d014a28 for pr-121251
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fxicalango%2Frsed" "/workspace/builds/worker-3-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc1/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/xicalango/rsed on toolchain 158f00a1c5175648af6f6099b075f78d1d014a28
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+158f00a1c5175648af6f6099b075f78d1d014a28" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/xicalango/rsed
[INFO] finished tweaking git repo https://github.com/xicalango/rsed
[INFO] tweaked toml for git repo https://github.com/xicalango/rsed written to /workspace/builds/worker-3-tc1/source/Cargo.toml
[INFO] crate git repo https://github.com/xicalango/rsed already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+158f00a1c5175648af6f6099b075f78d1d014a28" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+158f00a1c5175648af6f6099b075f78d1d014a28" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] a6eeb271049028a09aa9fa494676763e5cd6af48a4a30e468d8e2eb3a1a2bf99
[INFO] running `Command { std: "docker" "start" "-a" "a6eeb271049028a09aa9fa494676763e5cd6af48a4a30e468d8e2eb3a1a2bf99", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "a6eeb271049028a09aa9fa494676763e5cd6af48a4a30e468d8e2eb3a1a2bf99", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a6eeb271049028a09aa9fa494676763e5cd6af48a4a30e468d8e2eb3a1a2bf99", kill_on_drop: false }`
[INFO] [stdout] a6eeb271049028a09aa9fa494676763e5cd6af48a4a30e468d8e2eb3a1a2bf99
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+158f00a1c5175648af6f6099b075f78d1d014a28" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 8fc085bcacf15a10a847dd8006c3910c6fc798d852dbd914377c96c6d4280ba9
[INFO] running `Command { std: "docker" "start" "-a" "8fc085bcacf15a10a847dd8006c3910c6fc798d852dbd914377c96c6d4280ba9", kill_on_drop: false }`
[INFO] [stderr]     Checking libc v0.1.10
[INFO] [stderr]     Checking regex-syntax v0.2.2
[INFO] [stderr]     Checking memchr v0.1.6
[INFO] [stderr]     Checking aho-corasick v0.3.2
[INFO] [stderr]     Checking regex v0.1.41
[INFO] [stderr]     Checking rsed v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/buffer.rs:140:13
[INFO] [stdout]     |
[INFO] [stdout] 140 |             try!( w.write_all( line.as_bytes() ) );
[INFO] [stdout]     |             ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/ui.rs:79:19
[INFO] [stdout]    |
[INFO] [stdout] 79 |         let len = try!(stdin.read_line(&mut input));
[INFO] [stdout]    |                   ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/ui.rs:88:49
[INFO] [stdout]    |
[INFO] [stdout] 88 |             Mode::Command => Ok(Action::Command(try!(trim_input.parse()))),
[INFO] [stdout]    |                                                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/pos.rs:81:33
[INFO] [stdout]    |
[INFO] [stdout] 81 |                 let first_pos = try!(first.parse::<Pos>());
[INFO] [stdout]    |                                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/pos.rs:84:38
[INFO] [stdout]    |
[INFO] [stdout] 84 |                     let second_pos = try!(second.parse::<Pos>());
[INFO] [stdout]    |                                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/cmd.rs:34:9
[INFO] [stdout]    |
[INFO] [stdout] 34 |         try!(s.parse::<ParsedData>()).to_cmd()
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/cmd.rs:81:37
[INFO] [stdout]    |
[INFO] [stdout] 81 |                 'e' => Ok(Cmd::Edit(try!(arg))),
[INFO] [stdout]    |                                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/buffer.rs:140:13
[INFO] [stdout]     |
[INFO] [stdout] 140 |             try!( w.write_all( line.as_bytes() ) );
[INFO] [stdout]     |             ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/cmd.rs:106:18
[INFO] [stdout]     |
[INFO] [stdout] 106 |         let re = try!(Regex::new(COMMAND_RE));
[INFO] [stdout]     |                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/cmd.rs:110:29
[INFO] [stdout]     |
[INFO] [stdout] 110 |             let cmd_range = try!(captures.name("range").map(|r| r.parse()).flip());
[INFO] [stdout]     |                             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/ui.rs:79:19
[INFO] [stdout]    |
[INFO] [stdout] 79 |         let len = try!(stdin.read_line(&mut input));
[INFO] [stdout]    |                   ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/lib.rs:114:20
[INFO] [stdout]     |
[INFO] [stdout] 114 |         let file = try!(File::open(path));
[INFO] [stdout]     |                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/ui.rs:88:49
[INFO] [stdout]    |
[INFO] [stdout] 88 |             Mode::Command => Ok(Action::Command(try!(trim_input.parse()))),
[INFO] [stdout]    |                                                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/lib.rs:116:22
[INFO] [stdout]     |
[INFO] [stdout] 116 |         let buffer = try!(buffer::Buffer::from_buf_read(reader));
[INFO] [stdout]     |                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/pos.rs:81:33
[INFO] [stdout]    |
[INFO] [stdout] 81 |                 let first_pos = try!(first.parse::<Pos>());
[INFO] [stdout]    |                                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/lib.rs:131:20
[INFO] [stdout]     |
[INFO] [stdout] 131 |         let file = try!(File::open(path));
[INFO] [stdout]     |                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/pos.rs:84:38
[INFO] [stdout]    |
[INFO] [stdout] 84 |                     let second_pos = try!(second.parse::<Pos>());
[INFO] [stdout]    |                                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/lib.rs:134:31
[INFO] [stdout]     |
[INFO] [stdout] 134 |         self.current_buffer = try!(buffer::Buffer::from_buf_read(reader));
[INFO] [stdout]     |                               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/lib.rs:184:9
[INFO] [stdout]     |
[INFO] [stdout] 184 |         try!( self.current_buffer.write(&mut file) );
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/cmd.rs:34:9
[INFO] [stdout]    |
[INFO] [stdout] 34 |         try!(s.parse::<ParsedData>()).to_cmd()
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/lib.rs:183:24
[INFO] [stdout]     |
[INFO] [stdout] 183 |         let mut file = try!(File::open(path));
[INFO] [stdout]     |                        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/cmd.rs:81:37
[INFO] [stdout]    |
[INFO] [stdout] 81 |                 'e' => Ok(Cmd::Edit(try!(arg))),
[INFO] [stdout]    |                                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/cmd.rs:106:18
[INFO] [stdout]     |
[INFO] [stdout] 106 |         let re = try!(Regex::new(COMMAND_RE));
[INFO] [stdout]     |                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/cmd.rs:110:29
[INFO] [stdout]     |
[INFO] [stdout] 110 |             let cmd_range = try!(captures.name("range").map(|r| r.parse()).flip());
[INFO] [stdout]     |                             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/lib.rs:114:20
[INFO] [stdout]     |
[INFO] [stdout] 114 |         let file = try!(File::open(path));
[INFO] [stdout]     |                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/lib.rs:116:22
[INFO] [stdout]     |
[INFO] [stdout] 116 |         let buffer = try!(buffer::Buffer::from_buf_read(reader));
[INFO] [stdout]     |                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/lib.rs:131:20
[INFO] [stdout]     |
[INFO] [stdout] 131 |         let file = try!(File::open(path));
[INFO] [stdout]     |                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/lib.rs:134:31
[INFO] [stdout]     |
[INFO] [stdout] 134 |         self.current_buffer = try!(buffer::Buffer::from_buf_read(reader));
[INFO] [stdout]     |                               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/lib.rs:184:9
[INFO] [stdout]     |
[INFO] [stdout] 184 |         try!( self.current_buffer.write(&mut file) );
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/lib.rs:183:24
[INFO] [stdout]     |
[INFO] [stdout] 183 |         let mut file = try!(File::open(path));
[INFO] [stdout]     |                        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `core::str::<impl str>::trim_right`: superseded by `trim_end`
[INFO] [stdout]   --> src/ui.rs:85:32
[INFO] [stdout]    |
[INFO] [stdout] 85 |         let trim_input = input.trim_right();
[INFO] [stdout]    |                                ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]    |
[INFO] [stdout] 85 |         let trim_input = input.trim_end();
[INFO] [stdout]    |                                ~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `core::str::<impl str>::trim_right`: superseded by `trim_end`
[INFO] [stdout]   --> src/ui.rs:85:32
[INFO] [stdout]    |
[INFO] [stdout] 85 |         let trim_input = input.trim_right();
[INFO] [stdout]    |                                ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]    |
[INFO] [stdout] 85 |         let trim_input = input.trim_end();
[INFO] [stdout]    |                                ~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `msg` and `error` are never read
[INFO] [stdout]   --> src/lib.rs:35:5
[INFO] [stdout]    |
[INFO] [stdout] 34 | pub struct Error {
[INFO] [stdout]    |            ----- fields in this struct
[INFO] [stdout] 35 |     msg: String,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 36 |     error: ErrorType
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Error` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/buffer.rs:130:57
[INFO] [stdout]     |
[INFO] [stdout] 130 |         assert!(! self.is_out_of_bounds( range.start ), format!("Out of bounds: {}/0", range.start) );
[INFO] [stdout]     |                                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `assert!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: the `assert!()` macro supports formatting, so there's no need for the `format!()` macro here
[INFO] [stdout]     = note: `#[warn(non_fmt_panics)]` on by default
[INFO] [stdout] help: remove the `format!(..)` macro call
[INFO] [stdout]     |
[INFO] [stdout] 130 -         assert!(! self.is_out_of_bounds( range.start ), format!("Out of bounds: {}/0", range.start) );
[INFO] [stdout] 130 +         assert!(! self.is_out_of_bounds( range.start ), "Out of bounds: {}/0", range.start );
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/buffer.rs:131:55
[INFO] [stdout]     |
[INFO] [stdout] 131 |         assert!(! self.is_out_of_bounds( range.end ), format!("Out of bounds: {}/{}", range.end, self.len()) );
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `assert!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: the `assert!()` macro supports formatting, so there's no need for the `format!()` macro here
[INFO] [stdout] help: remove the `format!(..)` macro call
[INFO] [stdout]     |
[INFO] [stdout] 131 -         assert!(! self.is_out_of_bounds( range.end ), format!("Out of bounds: {}/{}", range.end, self.len()) );
[INFO] [stdout] 131 +         assert!(! self.is_out_of_bounds( range.end ), "Out of bounds: {}/{}", range.end, self.len() );
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `msg` and `error` are never read
[INFO] [stdout]   --> src/lib.rs:35:5
[INFO] [stdout]    |
[INFO] [stdout] 34 | pub struct Error {
[INFO] [stdout]    |            ----- fields in this struct
[INFO] [stdout] 35 |     msg: String,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 36 |     error: ErrorType
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Error` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/buffer.rs:130:57
[INFO] [stdout]     |
[INFO] [stdout] 130 |         assert!(! self.is_out_of_bounds( range.start ), format!("Out of bounds: {}/0", range.start) );
[INFO] [stdout]     |                                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `assert!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: the `assert!()` macro supports formatting, so there's no need for the `format!()` macro here
[INFO] [stdout]     = note: `#[warn(non_fmt_panics)]` on by default
[INFO] [stdout] help: remove the `format!(..)` macro call
[INFO] [stdout]     |
[INFO] [stdout] 130 -         assert!(! self.is_out_of_bounds( range.start ), format!("Out of bounds: {}/0", range.start) );
[INFO] [stdout] 130 +         assert!(! self.is_out_of_bounds( range.start ), "Out of bounds: {}/0", range.start );
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/buffer.rs:131:55
[INFO] [stdout]     |
[INFO] [stdout] 131 |         assert!(! self.is_out_of_bounds( range.end ), format!("Out of bounds: {}/{}", range.end, self.len()) );
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `assert!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: the `assert!()` macro supports formatting, so there's no need for the `format!()` macro here
[INFO] [stdout] help: remove the `format!(..)` macro call
[INFO] [stdout]     |
[INFO] [stdout] 131 -         assert!(! self.is_out_of_bounds( range.end ), format!("Out of bounds: {}/{}", range.end, self.len()) );
[INFO] [stdout] 131 +         assert!(! self.is_out_of_bounds( range.end ), "Out of bounds: {}/{}", range.end, self.len() );
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 19 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 19 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/main.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 |         try!(rsed.read_file(p));
[INFO] [stdout]    |         ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/main.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 |         try!(rsed.read_file(p));
[INFO] [stdout]    |         ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 1 warning emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 1 warning emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.52s
[INFO] running `Command { std: "docker" "inspect" "8fc085bcacf15a10a847dd8006c3910c6fc798d852dbd914377c96c6d4280ba9", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "8fc085bcacf15a10a847dd8006c3910c6fc798d852dbd914377c96c6d4280ba9", kill_on_drop: false }`
[INFO] [stdout] 8fc085bcacf15a10a847dd8006c3910c6fc798d852dbd914377c96c6d4280ba9
[INFO] checking xicalango/rsed against try#b4fc5dbf0bc33be331f9d893db5b3a794f29724a+rustflags=-Dexplicit_range -Dtrait_impl_range -Wrange_syntax -Wrange_bounds for pr-121251
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fxicalango%2Frsed" "/workspace/builds/worker-3-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc2/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/xicalango/rsed on toolchain b4fc5dbf0bc33be331f9d893db5b3a794f29724a
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b4fc5dbf0bc33be331f9d893db5b3a794f29724a" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/xicalango/rsed
[INFO] finished tweaking git repo https://github.com/xicalango/rsed
[INFO] tweaked toml for git repo https://github.com/xicalango/rsed written to /workspace/builds/worker-3-tc2/source/Cargo.toml
[INFO] crate git repo https://github.com/xicalango/rsed already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b4fc5dbf0bc33be331f9d893db5b3a794f29724a" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+b4fc5dbf0bc33be331f9d893db5b3a794f29724a" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 8a74edf61073f4d426ec98e6a8186f5c300bd483d50277d6397684295d1bbecf
[INFO] running `Command { std: "docker" "start" "-a" "8a74edf61073f4d426ec98e6a8186f5c300bd483d50277d6397684295d1bbecf", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "8a74edf61073f4d426ec98e6a8186f5c300bd483d50277d6397684295d1bbecf", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "8a74edf61073f4d426ec98e6a8186f5c300bd483d50277d6397684295d1bbecf", kill_on_drop: false }`
[INFO] [stdout] 8a74edf61073f4d426ec98e6a8186f5c300bd483d50277d6397684295d1bbecf
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid -Dexplicit_range -Dtrait_impl_range -Wrange_syntax -Wrange_bounds" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+b4fc5dbf0bc33be331f9d893db5b3a794f29724a" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] a71d34afcddf90494264d5a66195514d2ed4d603c652b9d43c85ff5d35bd423d
[INFO] running `Command { std: "docker" "start" "-a" "a71d34afcddf90494264d5a66195514d2ed4d603c652b9d43c85ff5d35bd423d", kill_on_drop: false }`
[INFO] [stderr]     Checking libc v0.1.10
[INFO] [stderr]     Checking regex-syntax v0.2.2
[INFO] [stderr]     Checking memchr v0.1.6
[INFO] [stderr]     Checking aho-corasick v0.3.2
[INFO] [stderr]     Checking regex v0.1.41
[INFO] [stderr]     Checking rsed v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/buffer.rs:102:18
[INFO] [stdout]     |
[INFO] [stdout] 102 |         for _ in start..end {
[INFO] [stdout]     |                  ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: requested on the command line with `-W range-syntax`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/buffer.rs:134:22
[INFO] [stdout]     |
[INFO] [stdout] 134 |         &self.lines[ range.start .. range.end ]
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/buffer.rs:140:13
[INFO] [stdout]     |
[INFO] [stdout] 140 |             try!( w.write_all( line.as_bytes() ) );
[INFO] [stdout]     |             ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/buffer.rs:102:18
[INFO] [stdout]     |
[INFO] [stdout] 102 |         for _ in start..end {
[INFO] [stdout]     |                  ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: requested on the command line with `-W range-syntax`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> src/buffer.rs:134:22
[INFO] [stdout]     |
[INFO] [stdout] 134 |         &self.lines[ range.start .. range.end ]
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/buffer.rs:140:13
[INFO] [stdout]     |
[INFO] [stdout] 140 |             try!( w.write_all( line.as_bytes() ) );
[INFO] [stdout]     |             ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/ui.rs:79:19
[INFO] [stdout]    |
[INFO] [stdout] 79 |         let len = try!(stdin.read_line(&mut input));
[INFO] [stdout]    |                   ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/ui.rs:88:49
[INFO] [stdout]    |
[INFO] [stdout] 88 |             Mode::Command => Ok(Action::Command(try!(trim_input.parse()))),
[INFO] [stdout]    |                                                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/pos.rs:81:33
[INFO] [stdout]    |
[INFO] [stdout] 81 |                 let first_pos = try!(first.parse::<Pos>());
[INFO] [stdout]    |                                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/pos.rs:84:38
[INFO] [stdout]    |
[INFO] [stdout] 84 |                     let second_pos = try!(second.parse::<Pos>());
[INFO] [stdout]    |                                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/cmd.rs:34:9
[INFO] [stdout]    |
[INFO] [stdout] 34 |         try!(s.parse::<ParsedData>()).to_cmd()
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/cmd.rs:81:37
[INFO] [stdout]    |
[INFO] [stdout] 81 |                 'e' => Ok(Cmd::Edit(try!(arg))),
[INFO] [stdout]    |                                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/cmd.rs:106:18
[INFO] [stdout]     |
[INFO] [stdout] 106 |         let re = try!(Regex::new(COMMAND_RE));
[INFO] [stdout]     |                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/cmd.rs:110:29
[INFO] [stdout]     |
[INFO] [stdout] 110 |             let cmd_range = try!(captures.name("range").map(|r| r.parse()).flip());
[INFO] [stdout]     |                             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/lib.rs:114:20
[INFO] [stdout]     |
[INFO] [stdout] 114 |         let file = try!(File::open(path));
[INFO] [stdout]     |                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/lib.rs:116:22
[INFO] [stdout]     |
[INFO] [stdout] 116 |         let buffer = try!(buffer::Buffer::from_buf_read(reader));
[INFO] [stdout]     |                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/lib.rs:131:20
[INFO] [stdout]     |
[INFO] [stdout] 131 |         let file = try!(File::open(path));
[INFO] [stdout]     |                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/lib.rs:134:31
[INFO] [stdout]     |
[INFO] [stdout] 134 |         self.current_buffer = try!(buffer::Buffer::from_buf_read(reader));
[INFO] [stdout]     |                               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/lib.rs:184:9
[INFO] [stdout]     |
[INFO] [stdout] 184 |         try!( self.current_buffer.write(&mut file) );
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/lib.rs:183:24
[INFO] [stdout]     |
[INFO] [stdout] 183 |         let mut file = try!(File::open(path));
[INFO] [stdout]     |                        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/ui.rs:79:19
[INFO] [stdout]    |
[INFO] [stdout] 79 |         let len = try!(stdin.read_line(&mut input));
[INFO] [stdout]    |                   ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/ui.rs:88:49
[INFO] [stdout]    |
[INFO] [stdout] 88 |             Mode::Command => Ok(Action::Command(try!(trim_input.parse()))),
[INFO] [stdout]    |                                                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/pos.rs:81:33
[INFO] [stdout]    |
[INFO] [stdout] 81 |                 let first_pos = try!(first.parse::<Pos>());
[INFO] [stdout]    |                                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/pos.rs:84:38
[INFO] [stdout]    |
[INFO] [stdout] 84 |                     let second_pos = try!(second.parse::<Pos>());
[INFO] [stdout]    |                                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/cmd.rs:34:9
[INFO] [stdout]    |
[INFO] [stdout] 34 |         try!(s.parse::<ParsedData>()).to_cmd()
[INFO] [stdout]    |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]   --> src/cmd.rs:81:37
[INFO] [stdout]    |
[INFO] [stdout] 81 |                 'e' => Ok(Cmd::Edit(try!(arg))),
[INFO] [stdout]    |                                     ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/cmd.rs:106:18
[INFO] [stdout]     |
[INFO] [stdout] 106 |         let re = try!(Regex::new(COMMAND_RE));
[INFO] [stdout]     |                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/cmd.rs:110:29
[INFO] [stdout]     |
[INFO] [stdout] 110 |             let cmd_range = try!(captures.name("range").map(|r| r.parse()).flip());
[INFO] [stdout]     |                             ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/lib.rs:114:20
[INFO] [stdout]     |
[INFO] [stdout] 114 |         let file = try!(File::open(path));
[INFO] [stdout]     |                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/lib.rs:116:22
[INFO] [stdout]     |
[INFO] [stdout] 116 |         let buffer = try!(buffer::Buffer::from_buf_read(reader));
[INFO] [stdout]     |                      ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/lib.rs:131:20
[INFO] [stdout]     |
[INFO] [stdout] 131 |         let file = try!(File::open(path));
[INFO] [stdout]     |                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/lib.rs:134:31
[INFO] [stdout]     |
[INFO] [stdout] 134 |         self.current_buffer = try!(buffer::Buffer::from_buf_read(reader));
[INFO] [stdout]     |                               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/lib.rs:184:9
[INFO] [stdout]     |
[INFO] [stdout] 184 |         try!( self.current_buffer.write(&mut file) );
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/lib.rs:183:24
[INFO] [stdout]     |
[INFO] [stdout] 183 |         let mut file = try!(File::open(path));
[INFO] [stdout]     |                        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `core::str::<impl str>::trim_right`: superseded by `trim_end`
[INFO] [stdout]   --> src/ui.rs:85:32
[INFO] [stdout]    |
[INFO] [stdout] 85 |         let trim_input = input.trim_right();
[INFO] [stdout]    |                                ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]    |
[INFO] [stdout] 85 |         let trim_input = input.trim_end();
[INFO] [stdout]    |                                ~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `core::str::<impl str>::trim_right`: superseded by `trim_end`
[INFO] [stdout]   --> src/ui.rs:85:32
[INFO] [stdout]    |
[INFO] [stdout] 85 |         let trim_input = input.trim_right();
[INFO] [stdout]    |                                ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]    |
[INFO] [stdout] 85 |         let trim_input = input.trim_end();
[INFO] [stdout]    |                                ~~~~~~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `msg` and `error` are never read
[INFO] [stdout]   --> src/lib.rs:35:5
[INFO] [stdout]    |
[INFO] [stdout] 34 | pub struct Error {
[INFO] [stdout]    |            ----- fields in this struct
[INFO] [stdout] 35 |     msg: String,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 36 |     error: ErrorType
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Error` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `msg` and `error` are never read
[INFO] [stdout]   --> src/lib.rs:35:5
[INFO] [stdout]    |
[INFO] [stdout] 34 | pub struct Error {
[INFO] [stdout]    |            ----- fields in this struct
[INFO] [stdout] 35 |     msg: String,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 36 |     error: ErrorType
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Error` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: explicit usage of `Range` type in public function
[INFO] [stdout]    --> src/buffer.rs:125:50
[INFO] [stdout]     |
[INFO] [stdout] 125 |     pub fn is_range_out_of_bounds(&self, range: &ops::Range<usize>) -> bool {
[INFO] [stdout]     |                                                  ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: requested on the command line with `-D explicit-range`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: explicit usage of `Range` type in public function
[INFO] [stdout]    --> src/buffer.rs:129:37
[INFO] [stdout]     |
[INFO] [stdout] 129 |     pub fn get_lines(&self, range: &ops::Range<usize>) -> &[String] {
[INFO] [stdout]     |                                     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/buffer.rs:130:57
[INFO] [stdout]     |
[INFO] [stdout] 130 |         assert!(! self.is_out_of_bounds( range.start ), format!("Out of bounds: {}/0", range.start) );
[INFO] [stdout]     |                                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `assert!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: the `assert!()` macro supports formatting, so there's no need for the `format!()` macro here
[INFO] [stdout]     = note: `#[warn(non_fmt_panics)]` on by default
[INFO] [stdout] help: remove the `format!(..)` macro call
[INFO] [stdout]     |
[INFO] [stdout] 130 -         assert!(! self.is_out_of_bounds( range.start ), format!("Out of bounds: {}/0", range.start) );
[INFO] [stdout] 130 +         assert!(! self.is_out_of_bounds( range.start ), "Out of bounds: {}/0", range.start );
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/buffer.rs:130:57
[INFO] [stdout]     |
[INFO] [stdout] 130 |         assert!(! self.is_out_of_bounds( range.start ), format!("Out of bounds: {}/0", range.start) );
[INFO] [stdout]     |                                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `assert!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: the `assert!()` macro supports formatting, so there's no need for the `format!()` macro here
[INFO] [stdout]     = note: `#[warn(non_fmt_panics)]` on by default
[INFO] [stdout] help: remove the `format!(..)` macro call
[INFO] [stdout]     |
[INFO] [stdout] 130 -         assert!(! self.is_out_of_bounds( range.start ), format!("Out of bounds: {}/0", range.start) );
[INFO] [stdout] 130 +         assert!(! self.is_out_of_bounds( range.start ), "Out of bounds: {}/0", range.start );
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/buffer.rs:131:55
[INFO] [stdout]     |
[INFO] [stdout] 131 |         assert!(! self.is_out_of_bounds( range.end ), format!("Out of bounds: {}/{}", range.end, self.len()) );
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `assert!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: the `assert!()` macro supports formatting, so there's no need for the `format!()` macro here
[INFO] [stdout] help: remove the `format!(..)` macro call
[INFO] [stdout]     |
[INFO] [stdout] 131 -         assert!(! self.is_out_of_bounds( range.end ), format!("Out of bounds: {}/{}", range.end, self.len()) );
[INFO] [stdout] 131 +         assert!(! self.is_out_of_bounds( range.end ), "Out of bounds: {}/{}", range.end, self.len() );
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/buffer.rs:131:55
[INFO] [stdout]     |
[INFO] [stdout] 131 |         assert!(! self.is_out_of_bounds( range.end ), format!("Out of bounds: {}/{}", range.end, self.len()) );
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of `assert!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: the `assert!()` macro supports formatting, so there's no need for the `format!()` macro here
[INFO] [stdout] help: remove the `format!(..)` macro call
[INFO] [stdout]     |
[INFO] [stdout] 131 -         assert!(! self.is_out_of_bounds( range.end ), format!("Out of bounds: {}/{}", range.end, self.len()) );
[INFO] [stdout] 131 +         assert!(! self.is_out_of_bounds( range.end ), "Out of bounds: {}/{}", range.end, self.len() );
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: explicit usage of `Range` type in public function
[INFO] [stdout]   --> src/ui.rs:42:43
[INFO] [stdout]    |
[INFO] [stdout] 42 |     pub fn new(buffer: &'a Buffer, range: ops::Range<usize>, option: PrintOption) -> DisplayModel {
[INFO] [stdout]    |                                           ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 3 previous errors; 21 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 21 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `rsed` (lib) due to 4 previous errors; 21 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] running `Command { std: "docker" "inspect" "a71d34afcddf90494264d5a66195514d2ed4d603c652b9d43c85ff5d35bd423d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a71d34afcddf90494264d5a66195514d2ed4d603c652b9d43c85ff5d35bd423d", kill_on_drop: false }`
[INFO] [stdout] a71d34afcddf90494264d5a66195514d2ed4d603c652b9d43c85ff5d35bd423d
